//#define _CRT_SECURE_NO_WARNINGS
//#include<stdio.h>
//long long a[100005] = { 0 };
//int int_cmp(const void* p1, const void* p2)
//{
//	return *((int*)p1) - *((int*)p2);
//}
//int main()
//{
//	int N = 0;
//	scanf("%d", &N);
//	int i = 0;
//	for (i = 1; i <= N; i++)
//	{
//		scanf("%lld", &a[i]);
//	}
//	qsort(a, N, sizeof(a[0]), int_cmp);
//	long long d = a[2]-a[1];
//	long long counts = 0;
//	if (d == 0)
//		counts = N;
//	else
//	{
//		int flag = 1;
//		while (flag)
//		{
//			long long t = d;
//			for (i = 1; i <= N; i++)
//			{
//				if ((a[i] - a[1]) % d != 0)
//					d--;
//			}
//			if (t == d)
//				flag = 0;
//		}
//		counts = ((a[N] - a[1]) / d)+1;
//	}
//	printf("%lld\n", counts);
//	return 0;
//}